Many digital data processing application programs in use today produce output in the form of a sequence of two-dimensional images or planes, exemplified by the printed page or the display on a cathode ray tube. Typical examples of such application programs include word processing programs, spread-sheet programs and data base manager programs. The contents of these images include all of the information obtained from the operation of the application program, arranged or formatted in a manner believed to be useful by the application programmer. Some limited ability to control or edit these output images are sometimes included in the application package. Unfortunately, however, such alternate output formats must be provided either by laborious, line-by-line manual editing of the original output, by hard coding of the new format by the application programmer, or else a large and complex report generator must be included in the application program to allow the user to format his or her own output.
The major disadvantage of the inflexible output format is that it sometimes serves to conceal rather than reveal the desired data, due either to the sparsity of the desired data among the total data output, or due to the indirect manner in which it is displayed. The disadvantages of report generators associated with application programs are the time and difficulty in learning how to use the report generator, only to find that it is then necessary to learn a new report generator for a new and different application program. The disadvantages of manual editing are obvious.